package main

import (
	"fmt"
	"reflect"
)

func main() {
	// 整型
	var a int = 42
	v1 := reflect.ValueOf(a)
	fmt.Printf("整型值: %d, 种类: %v\n", v1.Int(), v1.Kind())

	// 字符串
	var s string = "hello"
	v2 := reflect.ValueOf(s)
	fmt.Printf("字符串值: %s, 种类: %v\n", v2.String(), v2.Kind())

	// 布尔值
	var b bool = true
	v3 := reflect.ValueOf(b)
	fmt.Printf("布尔值: %t, 种类: %v\n", v3.Bool(), v3.Kind())

	// 切片
	slice := []int{1, 2, 3}
	v4 := reflect.ValueOf(slice)
	fmt.Printf("切片长度: %d, 容量: %d 种类: %v\n", v4.Len(), v4.Cap(), v4.Kind())
}
